package com.kuang.gulimall.product.feign;


import com.kuang.common.to.SkuReductionTo;
import com.kuang.common.to.SpuBoundTo;
import com.kuang.common.utils.R;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;

@FeignClient("gulimall-coupon")
public interface CouponFeignService {


    //远程调用的逻辑
    // 1,@ResponseBody将这个对象转为json
    //2,找到远程服务，给服务发送请求/coupon/spubounds/save，将上一步转的json，放在请求体发送请求
    //3，对方服务收到请求，请求体里有json数据，@RequestBody，将请求体的数据转为后面跟随的类型。只要属性名一一对应就可以。
    //4，只要json数据模型是兼容的，双方服务无需使用同一个to
    @PostMapping("/coupon/spubounds/save")
    R saveSpuBounds(@RequestBody SpuBoundTo spuBoundTo);


    @PostMapping("/coupon/skufullreduction/saveinfo")
    R saveSkuReduction(@RequestBody SkuReductionTo skuReductionTo);
}
